1. Field of the Invention
This invention generally relates to digital image and data transport processes and, more particularly, to a uniform resource indicator (URI) system and method for carrying MPEG-4 data in an MPEG-2 transport stream (TS).
2. Description of the Related Art
Most of the digital video broadcasting systems, such as European Digital Video Broadcasting (DVB) and American Advanced Television Systems Committee (ATSC), are based on the common MPEG-2 coding systems. MPEG-2 offers features such as high-definition video, multiple-channel audio, and even the exciting new multimedia data and interactive services.
Meanwhile, ISO and IEC have jointly developed ISO/IEC 14496 MPEG-4 as the next generation audiovisual standard. MPEG-4 provides better compression efficiency than MPEG-2 and new features such as audiovisual interactivities, Copyright Protection, and other features that can enhance digital television broadcasting and enable new applications. The harmonization between MPEG-2 based broadcasting standards, such as DVB, and MPEG-4 technologies is important for the enhancement of future digital television broadcasting. The harmonization of the MPEG-2 broadcasting and MPEG-4 standards must include the harmonization of layers, such as transport layer and application layer.
Transport layer harmonization is the foundation of this effort. Specifically, a means must be found to enable the carriage of MPEG-4 data elements, including scenes and associated streams, by the MPEG-2 broadcasting specified transport layer protocols. The MPEG-2 broadcasting system, such as Europe DVB or American ATSC, has defined transport protocols including MPEG-2 Transport Stream, DSM-CC Data Carousel, DSM-CC User-to-User (U-U) Object Carousel, and Internet Protocol, to name a few. MPEG-2 Transport Stream is the foundation layer for most of the other protocols. Thus, carriage of MPEG-4 data using MPEG-2 transport is an important issue to solve.
ISO/IEC has specified the method for carriage of MPEG-4 content on MPEG-2 transport stream (known as 4on2) in the specification of ISO/IEC 13818-1. MPEG-4 contents consist of an initial object descriptor and a variable number of streams, such as object descriptor stream, scene description streams, audio streams, video streams, IPMP streams, etc. The specification (ISO/IEC 13818-1) requires that each of the MPEG-4 streams be contained in an SL-packetized stream and may optionally be multiplexed into a FlexMux stream, both defined in ISO/IEC 14496-1. The SL-packetized streams or FlexMux streams are then encapsulated either in MPEG-2 Packetized Elementary Stream (PES) packets or in ISO_IEC—14496_sections prior to Transport Stream packetization and multiplexing.
ISO/IEC 13818-1 specifies the encapsulation and signaling approaches for the ISO/IEC 14496 audiovisual scenes and associated streams carried in ISO/IEC 13818-1 transport stream. The procedure is summarized as follows:
MPEG-4 content associated with a program carried in the transport stream shall be referenced in the Program Map Table of that program. Program Map Table is shown in Table 1.
An initial object descriptor (IOD) shall be used to define the ISO/IEC 14496-1 scene. The initial object descriptor, which serves as the initial access point to all associated MPEG-4 streams, shall be conveyed in the IOD descriptor located in the descriptor loop immediately following the program_info_length field in the Program Map Table of the program to which the scene is associated.
The IOD contains ES_Descriptors identifying the scene description and object descriptor streams that form the program. It may also contain ES_Descriptors identifying one or more associated IPMP or OCI streams, for example.
Elements of ISO/IEC 14496 content may be conveyed in one or more ISO/IEC 13818-1 MPEG-2 program elements referenced by a unique PID value within a Transport Stream.
Carriage of ISO/IEC 14496 content in a PID is signaled by a stream_type value of 0x12 or 0x13 in the Program Map Table in association with that PID value.
The SL descriptor and the FMC descriptor shall be used to specify the ES_ID for each encapsulated ISO/IEC 14496 stream.
TABLE 1Transport Stream program map sectionSyntaxNo. of bitsMnemonicTS_program_map_section( ) {table_id8uimsbfsection_syntax_indicator1bslbf‘0’1bslbfreserved2bslbfsection_length12uimsbfprogram_number16uimsbfreserved2bslbfversion_number5uimsbfcurrent_next_indicator1bslbfsection_number8uimsbflast_section_number8uimsbfreserved3bslbfPCR_PID13uimsbfreserved4bslbfprogram_info_length12uimsbffor (i = 0; i < N; i++) {descriptor( )}for (i = 0; i < N1; I++) {stream_type8uimsbfreserved3bslbfelementary_PID13uimsbfreserved4bslbfES_info_length12uimsbffor (i = 0; I < N2; i++) {descriptor( )}}CRC_3232rpchof}
FIG. 1 is a diagram illustrating procedures for playing MPEG-4 content (prior art). Following the specification of ISO/IEC 13818-1, the procedures for playing MPEG-4 content received from a 13818-1 transport, as described above, is described as follows:                1. Obtain the initial object descriptor (IOD), which contains the ES_Descriptors for the BIFS scene stream, object descriptor streams, etc.        2. The BIFS ES_Descriptor contains the ES_ID and an optional Universal Resource Locator (URL) for the BIFS stream to retrieve. Accordingly, there are two ways to retrieve the BIFS streams:                    a. Use the ES_ID, which serves as a unique label for the elementary stream within its name scope, and the SL_Descriptor, which contains the PID for the ES_ID. The BIFS stream can be retrieved from the packets associated with the PID.            b. Alternatively, if the ES_Descriptor contains an URL, the BIFS stream can be retrieved from the location specified by the URL. The retrieved stream is then associated with the ES_ID.                        3. Repeat Step 2 for the object descriptor stream.        4. Compose the BIFS scene using the retrieved BIFS stream.        5. Some BIFS nodes are associated to the corresponding elementary streams resources via object descriptors. The association is established by means of the objectDescriptrorID in the object descriptor.                    a. Use the objectDescriptorID to locate the object descriptor in the object descriptor stream.            b. The object descriptor shall contain the ES_Descriptor for the elementary stream.                        
Repeat Step 2, i.e. use the ES_ID or URL, to retrieve the elementary stream.
Due to the complexity of the specified ISO/IEC methodology, there is not yet a valid and complete implementation available up to date, especially for the carriage of MPEG-4 Systems on the MPEG-2 transport. Thus, there is a need to define a new method for delivery of MPEG-4 content based upon MPEG-2 transport protocols.
It would be advantageous if a means could be developed for carrying MPEG-4 data in an MPEG-2 TS using existing MPEG-2 methodologies.
It would be advantageous if the above-mentioned methodologies were compliant with existing MPEG-2 and MPEG-4 standards.